
#include"tstack.h"
#include"iostream"
template<class C>TStack<C>::TStack()
{
	(*this).length=20;
	(*this).t=new C[length];
	(*this).ind=-1;
	std::cout<<"S-a apelat constructorul implicit";
}
template<class C>TStack<C>::~TStack()
{ 
 	delete t;
	std::cout<<"\nStiva distrusa";
}
template<class C>TStack<C>::TStack(int length)
{
	(*this).length=length;
	(*this).t=new C[length];
	(*this).ind=-1;
}
template<class C> void TStack<C>::add(C element)
{
	if((*this).full())
	{
	
	}
	else
	{
	   ++ind;
	   t[ind]=element;
	}
}
template<class C>void TStack<C>::list()
{
	if((*this).empty())
	{
	
	}
	else
	{
	   std::cout<<"\n Elementele stivei sunt:";
	   for(int i=0;i<=(*this).ind;i++)
		std::cout<<"\n"<<t[i];
	}
}
template<class C>bool TStack<C>::empty()
{
	if((*this).ind==0)
	    return true;
	else
	    return false;
}
template<class C>bool TStack<C>::full()
{
 	if((*this).ind==(*this).length)
	     return true;
	else
	     return false;
}

